#ifndef _Control_H
#define _Control_H

#include <SDL/SDL.h>
#include "def.h"


//Constantes para las teclas
#define ARRIBA 		0
#define ABAJO 		1
#define IZQUIERDA 	2
#define DERECHA 	3
#define DISPARO 	4
#define SALTO 		5
#define NUM_TECLAS	6

/*---------------------------------
	Implements key control
---------------------------------*/
class Control
{
	SDLKey 	m_sTeclas[NUM_TECLAS];
	Bool	m_bTeclasPulsadas[NUM_TECLAS];
	Bool	m_bTeclasYaPulsadas[NUM_TECLAS];
	Uint8 	*m_pTeclado;
	
public:

	Control();
	~Control();	
	
	void Liberar();
	void Inicializar(SDLKey _teclado[NUM_TECLAS]);
	void Actualizar();
	int Pulsada(int _tecla)		{return m_pTeclado[m_sTeclas[_tecla]];}
	int YaPulsada(int _tecla)	{return m_bTeclasPulsadas[_tecla];}
	
};

#endif
